/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package pkg1ifxServidorTcp;
import java.util.Calendar;

/**
 *
 * @author strailaparicio
 */
public class cIfxDatosMSJ {
    
    public cIfxDatosMSJ(String msj, String ipmsj, int tipoa, String nombrea, int ntipoa)
    {
        smensaje=msj;sipmsj=ipmsj;ntipoagente=tipoa;snombreagente=nombrea;
        ntioalerta=ntipoa;
        Calendar calendario = Calendar.getInstance();
        sfecha = calendario.get(Calendar.HOUR)+":" + calendario.get(Calendar.MINUTE)+":"+ calendario.get(Calendar.SECOND)
                +" "+" "+(calendario.get(Calendar.DAY_OF_MONTH)+1)+"-"+calendario.get(Calendar.MONTH)+"-"+
                calendario.get(Calendar.YEAR);
    }
    public cIfxDatosMSJ()
    {
        //Y no hago nada lero lero
        Calendar calendario = Calendar.getInstance();
        sfecha = calendario.get(Calendar.HOUR)+":" + calendario.get(Calendar.MINUTE)+":"+ calendario.get(Calendar.SECOND)
                +" "+" "+calendario.get(Calendar.DAY_OF_MONTH)+"-"+calendario.get(Calendar.MONTH)+"-"+
                calendario.get(Calendar.YEAR);
    }
    public String getMensaje()
    {
        return smensaje;
    }
    public String getMensajeLargo()
    {
        return smensagelargo;
    }
    public void setMensaje(String entrada)
    {
        smensaje=entrada;
    }
    public String getIPMsj()
    {
        return sipmsj;
    }
    public void setIPMsj(String entrada)
    {
        sipmsj=entrada;
    }
    public int getTipoAgente()
    {
        return ntipoagente;
    }
    public String getSTipoAgente()
    {
        return stipoagente;
    }
    public void setTipoAgente(int entrada)
    {
        ntipoagente=entrada;
        stipoagente=getTipoIFX();
    }
    public void setNombreAgente(String entrada)
    {
        snombreagente=entrada;
    }
    public String getNombreAgente()
    {
        return snombreagente;
    }
    public int getTipoAlerta()
    {
        return ntioalerta;
    }
    public String getSTipoAlerta()
    {
        return stipoalerta;
    }
    public void setTipoAlerta(int entrada)
    {
        ntioalerta=entrada;
        stipoalerta=getPrioridad();
    }
    public String getFechaMsj()
    {
        return sfecha;
    }
    public String getPrioridad()
    {
        if(ntioalerta==0)
            return "NORMAL";
        else if(ntioalerta==1)
            return "MEDIO";
        else if(ntioalerta==2)
            return "ALTO";
        else if(ntioalerta==3)
            return "MUY ALTO";
        else 
            return "BAJO";
    }
    public String getTipoIFX()
    {
        if(ntipoagente==0)
            return "CONSOLA";
        else if(ntipoagente==1)
            return "AKIRA";
        else if(ntipoagente==2)
            return "GENMON";
        else if(ntipoagente==3)
            return "AKIRA-I";
        else 
            return "AKER";
    }
    public void CopiameEn(cIfxDatosMSJ copioen)
    {
        copioen.setMensaje(smensaje);
        copioen.setIPMsj(sipmsj);
        copioen.setNombreAgente(snombreagente);
        copioen.setTipoAgente(ntipoagente);
        copioen.setTipoAlerta(ntioalerta);
        
    }
    public void convCadEnMsj(String scadena)
    {
        try
        {
            if(scadena.contains("IFX-Msj"))
            {
                String scadenatmp=scadena;

                int nposdato=-1;
                String[] sdatosmensage = new String[5];
                nposdato=scadenatmp.indexOf("IFX-Msj");
                scadenatmp = scadenatmp.substring(nposdato + "IFX-Msj".length());
                sdatosmensage=scadenatmp.split("\\|");//Resulta que el puto split con | falla hay que ponerle \\|
                //stostring=sfecha+" , "+
                //        getTipoIFX()+","+
                //        getPrioridad()+","+scadenatmp;
                snombreagente=sdatosmensage[0];
                sipmsj= sdatosmensage[1];
                ntipoagente= Integer.parseInt(sdatosmensage[2]);
                smensaje=sdatosmensage[3];
                ntioalerta=Integer.parseInt(sdatosmensage[4]);
                //Ahora armo el mensaje largo con los valores
                stipoalerta=getPrioridad();
                stipoagente=getTipoIFX();
                stostring=sfecha+" , "+
                        getTipoIFX()+" , "+
                        getPrioridad()+" , "+
                        scadenatmp;// +","+
                        //stipoalerta +","+
                        //stipoagente;
                smensagelargo = stostring;
            }
        }catch(Exception e)
           {
               System.out.println(e);
           }
            
        
    }
    public void convCad(String scadena)
    {
        try{
        
            String scadenatmp=scadena;

            String[] sdatosmensage = new String[4];
//            stostring=sfecha+" , "+
//                        getTipoIFX()+","+
//                        getPrioridad()+","+scadenatmp;
            sdatosmensage=scadenatmp.split("\\|");
            snombreagente=sdatosmensage[0];
            sipmsj= sdatosmensage[1];
            ntipoagente= Integer.parseInt(sdatosmensage[2]);
            smensaje=sdatosmensage[3];
            ntioalerta=Integer.parseInt(sdatosmensage[4]);
            //Ahora armo el mensaje largo con los valores
                stipoalerta=getPrioridad();
                stipoagente=getTipoIFX();
                stostring=sfecha+" , "+
                        getTipoIFX()+" , "+
                        getPrioridad()+" , "+
                        scadenatmp;// +","+
                        //stipoalerta +","+
                        //stipoagente;
                smensagelargo = stostring;
            
           }catch(Exception e)
           {
               System.out.println(e);
           }
        
    
            
        
    }
    public String getTostring()
    {
        return stostring;
    }
    //Formato del Mensaje
    //IFX-Msj Nombre Agente|Direccion IP|Tipo Agente|Mensaje a enviar|importancia
    
    private String smensaje="VACIO";
    private String smensagelargo="VACIO";
    private String sipmsj="127.0.0.1";
    private int ntipoagente=0; //0=CONSOLA,1=AKIRA, 2=GENMON, 3=AKER
    private String stipoagente="CONSOLA";
    private String snombreagente="CONSOLA";
    private int ntioalerta=0;//0=normal;1=medio;2=alto
    private String stipoalerta = "NORMAL";
    private String sfecha="";//Calendar.getInstance().toString();
    private String stostring="";
     
}
